package com.yugong.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.yugong.entity.dto.Building;
import com.yugong.entity.vo.request.BuildingRequestVO;
import com.yugong.entity.vo.response.BuildingListResponseVO;

import java.util.List;

/**
 * 楼栋业务逻辑接口
 *
 * @author yugong
 * @date 2024/2/18
 */
public interface BuildingService extends IService<Building> {
    /**
     * 根据楼栋名查询楼栋
     *
     * @param pageNum      当前页
     * @param pageSize     当前页数据总个数
     * @param buildingName 楼栋名
     * @return 楼栋
     */
    PageInfo<BuildingListResponseVO> findBuilding(Integer pageNum, Integer pageSize, String buildingName);

    /**
     * 查询楼栋
     *
     * @return 楼栋
     */
    List<BuildingListResponseVO> findBuilding();

    /**
     * 新增楼栋
     *
     * @param buildingRequestVO 楼栋请求实体类
     * @return 数据库影响行数
     */
    int addBuilding(BuildingRequestVO buildingRequestVO);

    /**
     * 更新楼栋
     *
     * @param buildingRequestVO 楼栋请求实体类
     * @return 数据库影响行数
     */
    int updateBuilding(BuildingRequestVO buildingRequestVO);

    /**
     * 删除楼栋
     *
     * @param buildingNo 楼栋号
     * @return 数据库影响行数
     */
    int deleteBuilding(String buildingNo);
}
